This invention pertains to implantable medical devices, such as cardiac pacemakers and implantable cardioverter/defibrillators, with data gathering capabilities. In particular, the invention relates to systems and methods for managing the storage and retrieval of episodic information gathered during operation of the device.
Implantable medical devices, such as cardiac pacemakers and implantable cardioverter/defibrillators have a limited amount of memory for storing data associated with episodes and therapy attempts. Previous methods of data storage have used a simple first-in, first-out rule for storing the data associated with episodes and therapy attempts with the assumption that there is enough memory so all data of interest can be retrieved before it is overwritten by newer data. Previous devices have also partitioned the data by type (electrogram data, interval data, episode and attempt data) where the first-in, first-out rule is applied individually to each type of data.
Although newer devices have increased the amount of memory available for storage, the assumption that data not yet retrieved still exists in device memory may still not hold true in many cases. For example, electrogram data almost always get overwritten first because a smaller amount of storage is available for electrogram data relative to the amounts dedicated to interval data and episode data. There are also cases where a patient has recurring arrhythmias of a certain type which overwrite the data from the infrequent arrhythmias which are of real interest to the physician. Newer devices are expanding the scope of arrhythmias that can be treated and consequently more data is generated for the newer types of arrhythmias. This leads to a need to manage the data storage such that the data of most interest is preserved.
The present invention is a system and method for storing episodic data collected by an implantable medical device. In one embodiment, previously used data storage locations are freed for overwriting with new data in accordance with a priority protection scheme. A data storage segmentation scheme may also be used that attempts to maintain a specified ratio of types stored data if unallocated storage space is unavailable.
In a particular implementation of the invention, collected data associated with an episode is stored in data storage locations referenced by storage nodes, where an episode is defined as any detected condition requiring the recordation of data. A linked list of unallocated storage nodes is maintained so that a storage node from the unallocated list can be allocated to each episode for which collected data is to be stored. In addition, a priority type linked list corresponding to each one of a plurality of episode priority types is also maintained, wherein each priority type linked list comprises storage nodes allocated to episodes of a particular type linked in an order that corresponds to when the episodes occurred. When the unallocated list of storage nodes is empty, storage nodes are freed for allocation to a present episode by freeing the oldest data storage node from one of the priority type lists, wherein the freed node is taken from a lower priority list in preference to a higher priority list. In accordance with a data storage segmentation scheme, storage nodes may be freed from priority type lists and allocated to new episodes in a manner that attempts to maintain the number of stored episodes of a particular type below a specified maximum number.
The storage nodes may reference a plurality of locations for storing a plurality of types of data associated with the episode. In a specific embodiment, data storage locations may be allocated to therapy attempts associated with an episode, and data collected prior to onset of the episode may be stored in a location referenced by the data storage node allocated to the episode. In a further specific embodiment, data collected before and after the therapy attempt may be stored in locations referenced by the data storage node allocated to the attempt.